package model

import "time"

// PmsProduct 商品信息
type PmsProduct struct {
	ID                         int64     `json:"id" gorm:"id"`
	BrandId                    int64     `json:"brandId" gorm:"brand_id"`
	ProductCategoryId          int64     `json:"productCategoryId" gorm:"product_category_id"`
	FeightTemplateId           int64     `json:"feightTemplateId" gorm:"feight_template_id"`
	ProductAttributeCategoryId int64     `json:"productAttributeCategoryId" gorm:"product_attribute_category_id"`
	Name                       string    `json:"name" gorm:"name"`
	Pic                        string    `json:"pic" gorm:"pic"`
	ProductSn                  string    `json:"productSn" gorm:"product_sn"`             // 货号
	DeleteStatus               int64     `json:"deleteStatus" gorm:"delete_status"`       // 删除状态：0->未删除；1->已删除
	PublishStatus              int64     `json:"publishStatus" gorm:"publish_status"`     // 上架状态：0->下架；1->上架
	NewStatus                  int64     `json:"newStatus" gorm:"new_status"`             // 新品状态:0->不是新品；1->新品
	RecommandStatus            int64     `json:"recommandStatus" gorm:"recommand_status"` // 推荐状态；0->不推荐；1->推荐
	VerifyStatus               int64     `json:"verifyStatus" gorm:"verify_status"`       // 审核状态：0->未审核；1->审核通过
	Sort                       int64     `json:"sort" gorm:"sort"`                        // 排序
	Sale                       int64     `json:"sale" gorm:"sale"`                        // 销量
	Price                      float64   `json:"price" gorm:"price"`
	PromotionPrice             float64   `json:"promotionPrice" gorm:"promotion_price"` // 促销价格
	GiftGrowth                 int64     `json:"giftGrowth" gorm:"gift_growth"`         // 赠送的成长值
	GiftPoint                  int64     `json:"giftPoint" gorm:"gift_point"`           // 赠送的积分
	UsePointLimit              int64     `json:"usePointLimit" gorm:"use_point_limit"`  // 限制使用的积分数
	SubTitle                   string    `json:"subTitle" gorm:"sub_title"`             // 副标题
	Description                string    `json:"description" gorm:"description"`        // 商品描述
	OriginalPrice              float64   `json:"originalPrice" gorm:"original_price"`   // 市场价
	Stock                      int64     `json:"stock" gorm:"stock"`                    // 库存
	LowStock                   int64     `json:"lowStock" gorm:"low_stock"`             // 库存预警值
	Unit                       string    `json:"unit" gorm:"unit"`                      // 单位
	Weight                     float64   `json:"weight" gorm:"weight"`                  // 商品重量，默认为克
	PreviewStatus              int64     `json:"previewStatus" gorm:"preview_status"`   // 是否为预告商品：0->不是；1->是
	ServiceIds                 string    `json:"serviceIds" gorm:"service_ids"`         // 以逗号分割的产品服务：1->无忧退货；2->快速退款；3->免费包邮
	Keywords                   string    `json:"keywords" gorm:"keywords"`
	Note                       string    `json:"note" gorm:"note"`
	AlbumPics                  string    `json:"albumPics" gorm:"album_pics"` // 画册图片，连产品图片限制为5张，以逗号分割
	DetailTitle                string    `json:"detailTitle" gorm:"detail_title"`
	DetailDesc                 string    `json:"detailDesc" gorm:"detail_desc"`
	DetailHtml                 string    `json:"detailHtml" gorm:"detail_html"`                    // 产品详情网页内容
	DetailMobileHtml           string    `json:"detailMobileHtml" gorm:"detail_mobile_html"`       // 移动端网页详情
	PromotionStartTime         time.Time `json:"promotionStartTime" gorm:"promotion_start_time"`   // 促销开始时间
	PromotionEndTime           time.Time `json:"promotionEndTime" gorm:"promotion_end_time"`       // 促销结束时间
	PromotionPerLimit          int64     `json:"promotionPerLimit" gorm:"promotion_per_limit"`     // 活动限购数量
	PromotionType              int64     `json:"promotionType" gorm:"promotion_type"`              // 促销类型：0->没有促销使用原价;1->使用促销价；2->使用会员价；3->使用阶梯价格；4->使用满减价格；5->限时购
	BrandName                  string    `json:"brandName" gorm:"brand_name"`                      // 品牌名称
	ProductCategoryName        string    `json:"productCategoryName" gorm:"product_category_name"` // 商品分类名称
}

// TableName 表名称
func (*PmsProduct) TableName() string {
	return "pms_product"
}
